Control Container
This library allows placing control elements in the corners of the map container.
Libraries such as Leaflet
and Maplibre GL JS
are already doing this,
but Cesium
and Openlayers
do not have similar functionality.
╭───────────────────────────────────────────╮
│ top-left top-right │
│ MAP │
│ bottom-left bottom-right │
╰───────────────────────────────────────────╯
Installation
npm install @nextgis/control-container
Usage
import ControlContainer from '@nextgis/control-container';
const controlContainer = new ControlContainer({ target: 'map-control-id' });
const controlContainer = new ControlContainer({ map: webMap });
controlContainer.addTo('.map-control-class');
controlContainer.append('<div>HTML</div>', 'top-right');
controlContainer.append(HTMLElement, 'top-right');
const control = {
onAdd(webMap) {
const container = document.createContainer('div');
webMap.emitter.on('zoomend', () => {
container.innerHTML = webMap.getZoom();
});
return container
}
}
controlContainer.addControl(control, 'bottom-right');
Commercial support
Need to fix a bug or add a feature to @nextgis/control-container
? We provide custom development and support for this software. Contact us to discuss options!